/*
 *
 * Copyright (c) 2025, NexIoT. All Rights Reserved.
 *
 * @Description: 本文件由 gitee.com/NexIoT 开发并拥有版权，未经授权严禁擅自商用、复制或传播。
 * @Author: gitee.com/NexIoT
 * @Email: wo8335224@gmail.com
 * @Wechat: outlookFil
 *
 *
 */

package cn.universal.common.utils;

/** 媒体类型工具类 @Author ruoyi */
public class MimeTypeUtils {

  public static final String IMAGE_PNG = "image/png";

  public static final String IMAGE_JPG = "image/jpg";

  public static final String IMAGE_JPEG = "image/jpeg";

  public static final String IMAGE_BMP = "image/bmp";

  public static final String IMAGE_GIF = "image/gif";

  public static final String[] IMAGE_EXTENSION = {"bmp", "gif", "jpg", "jpeg", "png"};

  public static final String[] FLASH_EXTENSION = {"swf", "flv"};

  public static final String[] MEDIA_EXTENSION = {
    "swf", "flv", "mp3", "wav", "wma", "wmv", "mid", "avi", "mpg", "asf", "rm", "rmvb"
  };

  public static final String[] VIDEO_EXTENSION = {"mp4", "avi", "rmvb"};

  public static final String[] DEFAULT_ALLOWED_EXTENSION = {
    // 图片
    "bmp",
    "gif",
    "jpg",
    "jpeg",
    "png",
    // word excel powerpoint
    "doc",
    "docx",
    "xls",
    "xlsx",
    "ppt",
    "pptx",
    "html",
    "htm",
    "txt",
    // 压缩文件
    "rar",
    "zip",
    "gz",
    "bz2",
    // 视频格式
    "mp4",
    "avi",
    "rmvb",
    // pdf
    "pdf"
  };

  public static String getExtension(String prefix) {
    switch (prefix) {
      case IMAGE_PNG:
        return "png";
      case IMAGE_JPG:
        return "jpg";
      case IMAGE_JPEG:
        return "jpeg";
      case IMAGE_BMP:
        return "bmp";
      case IMAGE_GIF:
        return "gif";
      default:
        return "";
    }
  }
}
